package com.doit.day06

object _09_泛型 {
  def main(args: Array[String]): Unit = {

    val tiger: Tiger[Int] = new Tiger[Int]
    tiger.aaa(1)
//    tiger.bbb[]()


    //泛型的上下限  >:   <:
  }
}

//提前声明一下我这个A    声明的时候 在类名后面()前面 [A]
class Tiger[A](){

  //有可能我要往方法里面传一个int类型的值
  //也有可能我想传一个Double类型的值
  //还有可能传一个Person对象
  def aaa(a:A)={
    println(a)
  }

  //给泛型设置范围
  def bbb[B <: Fu1](b:B)={
    println(b)
  }

  def ccc(c:A)={
    println(c)
  }

}


class Ye1

class Fu1 extends Ye1

class Zi1 extends Fu1
